docs: migrate site to Zensical, fix broken examples, document all materializers - #54
Open
jvanbuel wants to merge 1 commit into
Open
docs: migrate site to Zensical, fix broken examples, document all materializers#54jvanbuel wants to merge 1 commit into
jvanbuel wants to merge 1 commit into
Conversation
…erializers Switch the docs site from MkDocs Material to Zensical, keeping mkdocs.yml as the config since Zensical reads it natively and upstream recommends against hand-writing zensical.toml while the format settles. Zensical does not implement exclude_docs (zensical/backlog#65), which silently published the seven internal design docs under docs/plans/. Move them to plans/, outside docs_dir, to keep the published page set at 18. Fix the metric examples, none of which could run. Metric is a Pydantic model, so overriding name/description/unit requires type annotations and executor requires ClassVar; the docs used bare assignments that raise PydanticUserError at class definition. Wrap three fluent-chain examples in parens, since the indented continuations raise IndentationError on paste. Add the __main__ guard the process pool needs on spawn platforms. Export MarkdownMaterializer from the top-level package. It was registered as an entry point and exported from checkup.materializers, but the top-level re-export was missed, so 'from checkup import MarkdownMaterializer' raised ImportError while its four siblings worked. Document it and SQLAlchemyMaterializer, both previously absent while the docs claimed three materializers exist. Point the repo URLs at datamindedbe/checkup after the rename from incubator-checkup, document uv rather than pip, and replace the horseshoe logo with a mark cropped from the new banner. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Migrates the documentation site from MkDocs Material to Zensical, and fixes a batch of documentation and packaging bugs found while proofreading.
The site keeps
mkdocs.ymlas its config. Zensical reads it natively, and upstream recommends against hand-writingzensical.tomlwhile the format is still settling.Site migration
mkdocs+mkdocs-materialforzensicalin thedocsdependency group, and change CI frommkdocs build --stricttozensical build --strict.docs/plans/toplans/, outsidedocs_dir. Zensical does not implementexclude_docs(zensical/backlog#65), so those files were silently published. The published page set stays at 18.exclude_docskey, which Zensical ignores.Documentation bug fixes
These examples did not run before this change:
Metricis a Pydantic model, so overridingname/description/unitneeds a type annotation andexecutorneedsClassVar. The docs used bare assignments (name = "..."), which raisePydanticUserErrorat class definition. Now annotated to match the real plugin code.CheckHub()followed by an indented.with_metrics(...)raisesIndentationErroron paste. Wrapped in parens.if __name__ == "__main__":. Added, with a one-line note.Packaging fix
MarkdownMaterializerfrom the top-levelcheckuppackage. It was registered as an entry point and exported fromcheckup.materializers, but the top-level re-export was missed in feat: Add MarkdownMaterializer #47, sofrom checkup import MarkdownMaterializerraisedImportErrorwhile its four siblings worked.Content updates
MarkdownMaterializerandSQLAlchemyMaterializer. The docs claimed three materializers; there are five. Both new sections were verified by running them.datamindedbe/checkupafter the rename fromincubator-checkup.uvrather thanpipthroughout.Verification
uv run zensical build --strictpasses with no issues; 18 published pages, noplans/leak.uv run pytest: 210 passed, 1 skipped.Note for reviewers
docs/api/core.mdcontains signature snippets in```pythonfences that are not valid Python (e.g.CheckHub(config_path: Path | None = None)). Left as-is, since that is a normal API-reference convention, but happy to change the fences if you prefer.🤖 Generated with Claude Code